#ifndef OBJECT_WORLD_H
#define OBJECT_WORLD_H

#include "object_screen.h"
#include "../affiliate/collider.h"

class ObjectWorld : public ObjectScreen {
protected:
    glm::vec2 position_ = glm::vec2(0,0);    // render screen position
    Collider* collider_ = nullptr;

public:
    virtual void init() override { type_ = ObjectType::OBJECT_WORLD; }
    virtual void update(float dt) override;

    virtual void takeDamage(float) {}
    // getters and setters
    virtual glm::vec2 getPosition() const { return position_; }
    void setPosition(const glm::vec2 &position);
    virtual void setRenderPosition(const glm::vec2 &render_position) override;
    Collider* getCollider() { return collider_; }
    void setCollider(Collider* collider) { collider_ = collider; }
};

#endif // OBJECT_WORLD_H